//
// Created by wkm on 2024-04-21.
//

#ifndef AES128CHIPSYSTEMC_SBOX_DRIVER_H
#define AES128CHIPSYSTEMC_SBOX_DRIVER_H

#include "../core_module/CONSTANT.h"

SC_MODULE(sbox_driver) {
    sc_in<bool> d_clk;
    sc_out<sc_uint<DATA_SIZE>> d_addr1, d_addr2, d_addr3, d_addr4, d_addr5, d_addr6, d_addr7, d_addr8,
            d_addr9, d_addr10, d_addr11, d_addr12, d_addr13, d_addr14, d_addr15, d_addr16;
    sc_out<bool> d_en_read;

    void prc_sbox_driver();

    SC_CTOR(sbox_driver) {
        SC_THREAD(prc_sbox_driver);
        sensitive << d_clk.pos();
    }

};

#endif //AES128CHIPSYSTEMC_SBOX_DRIVER_H
